var App = getApp()
Page({
  /**
   * 页面的初始数据
   */
  data: {
    role_id:wx.getStorageSync('role_id'),
    // 门店下拉
    storeList:[],
    storeindex:0,  //下标
    store_name:'', //选中回显
    store_id:'',    //选中的门店ID
    // 数据类型下拉
    typeList:[],
    typeindex:0,  //下标
    type_name:'收款数据', //选中回显
    type_id:'1',   //选中的ID
    // date_type
    date_type:2, //每日2，每月3，每年4
    // 日期下拉
    dateList:[],
    dateindex:0,  //下标
    // 图表1
    chartData: {},
    opts: {
      padding: [10,5,0,1],    
      fontSize: 12,             
      fontColor: "#666666",    //图表柱子上方数值,字颜色
      dataLabel: false,        //图表柱子上方是否显示数值
      color:['#3377FF'],       //柱子颜色
      enableScroll: false,     //X轴是否滚动
      xAxis: {
        itemCount:12,
      },
      yAxis: {
        data: [
          {
            min: 0
          }
        ],
      },
      legend: {
        show: true, //X轴底部的分类
        padding: 1,
        margin: 1,
      },
      extra: {
        column: {
          width:"auto",    //宽度
          categoryGap: 0.6,  //（X轴点）柱子之间的间距
        }
      }
    },
    // 图表2
     chartData2: {},
     opts2: {
       padding: [10,5,0,1],    
       fontSize: 12,             
       fontColor: "#666666",    //图表柱子上方数值,字颜色
       dataLabel: false,        //图表柱子上方是否显示数值
       color:['#FF9C12'],       //柱子颜色
       enableScroll: false,     //X轴是否滚动
       xAxis: {
         itemCount:12,
       },
       yAxis: {
        data: [
          {
            min: 0
          }
        ],
        disabled: false,
        disableGrid: false,
        splitNumber: 5, //Y轴刻度个数
      },
       legend: {
         show: true, //X轴底部的分类
         padding: 1,
         margin: 1,
       },
       extra: {
         column: {
           width:"auto",    //宽度
           categoryGap: 0.6,  //（X轴点）柱子之间的间距
         }
       }
     },
    // 收款金额+收款笔数
    sum_data: 0,
    sum_data_count: 0,
    opt_name:"",
    opt2_name:""
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    // 获取门店列表
    this.getStore()
    this.getType()
    
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {
    if(wx.getStorageSync('user_id')){
      this.getDate()
    }
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    // 获取数据列表
    
  },

  // 获取门店列表
  getStore(){
    let that = this;
    let obj = {b_id:App.get_b_id()}
    App.request('/Manage/Management/storeList',obj,function(e){
      console.log(e);
        if (e.code == "200") {
          that.setData({
            storeList:e.result,
          })
        } else {
          wx.showToast({
            title: e.message,
            icon: 'none',
            duration: 2000
          })
        }
    })
  },
  //选择门店
  bindStorePicker: function (e) {
    this.setData({
      storeindex: e.detail.value,
      store_id:this.data.storeList[e.detail.value].store_id,
      store_name:this.data.storeList[e.detail.value].title,
    })
    this.get_echars() //获取数据列表
  },
  // 获取类型列表
  getType(){
    let that = this;
    let obj = {b_id:App.get_b_id()}
    App.request('/Manage/Management/dataCenterType',obj,function(e){
      console.log(e);
        if (e.code == "200") {
          that.setData({
            typeList:e.result,
          })
        } else {
          wx.showToast({
            title: e.message,
            icon: 'none',
            duration: 2000
          })
        }
    })
  },
  //选择类型
  bindTypePicker: function (e) {
    this.setData({
      typeindex: e.detail.value,
      type_id:this.data.typeList[e.detail.value].value,
      type_name:this.data.typeList[e.detail.value].name,
    })
    this.get_echars() //获取数据列表
  },
  // 选择日期类型
  bindDateType(e){
    this.setData({
      dateindex:0,  //下标
      date_type:e.currentTarget.dataset.id,
    })
    this.getDate()
  },
   // 获取日期列表
  getDate(){
    let that = this;
    let obj = {date:that.data.date_type}
    App.request('/Manage/Management/nowMonth',obj,function(e){
      console.log(e);
        if (e.code == "200") {
          that.setData({
            dateList:e.result,
          })
          // 获取数据图表数据
          that.get_echars();
        } else {
          wx.showToast({
            title: e.message,
            icon: 'none',
            duration: 2000
          })
        }
    })
  },
  //选择日期
  bindDatePicker: function (e) {
    this.setData({
      dateindex: e.detail.value,
    })
    this.get_echars() //获取数据列表
  },
  // 获取数据图表数据
  get_echars(){
    var that = this;
    console.log(that.data.dateindex,that.data.dateList)
    let obj ={
      b_id:App.get_b_id(),
      class_type:that.data.type_id,
      date_type:that.data.date_type,
      store_id:that.data.store_id,
      date:that.data.dateList[that.data.dateindex]
    }
    App.request('/Manage/Management/dataCenter',obj,function(e){
        that.setData({ 
          sum_data: e.result.sum_data,
          sum_data_count: e.result.sum_data_count,
          opt_name:e.result.data_text,
          opt2_name:e.result.count_text
        });
        setTimeout(() => {
          // 收款金额
          let chartData = {
            categories:e.result.btm, //X轴数据
            series: [
              {
                name:e.result.data_text,
                data: e.result.data
              }, //Y轴数据
            ]
          };
          // 处理Y轴显示
          let opts = that.data.opts
          opts.yAxis.data[0].max = e.result.max
          opts.yAxis.splitNumber =  e.result.step
          if(that.data.date_type ==2){
            opts.xAxis.format='xAxisNoMonth'
          }else{
            opts.xAxis.format=''
          }
          that.setData({ chartData,opts });
          // 收款笔数
          let chartData2 = {
            categories:e.result.btm, //X轴数据
            series: [
              {
                name:e.result.count_text,
                data: e.result.data_count
              }, //Y轴数据
            ]
          };
          let opts2 = that.data.opts2
          opts2.yAxis.data[0].max = e.result.count_max
          opts2.yAxis.splitNumber =  e.result.count_step
          if(that.data.date_type ==2){
            opts2.xAxis.format='xAxisNoMonth'
          }else{
            opts2.xAxis.format=''
          }
          that.setData({chartData2,opts2});
      }, 1000);
      })
  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {
    // 获取数据列表
    this.get_echars();
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})